package com.example.wlzz.service;
import com.example.wlzz.form.TaskForm;
import com.example.wlzz.vo.CommentPageVO;
import com.example.wlzz.vo.PageVO;
import com.example.wlzz.vo.ResultVO;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import java.util.List;
public interface TaskService {
    ResultVO save(TaskForm taskForm, List<String> files, String token);  //保存任务
    ResultVO deleteTask(String taskId,String token);  //删除任务
    PageVO findAll(Pageable pageable,int userid,String schoolName);    //不分类查询所有
    PageVO findByCategory(String category, Pageable pageable,int userid,String schoolName);  //按照主分类查找
    PageVO getSelfTask(Integer userid,int del_flag,int status,Pageable pageable);  //根据任务状态获取自己的任务
    PageVO getAllSelfTask(Integer userid,int del_flag,Pageable pageable);  //获取自己所有的任务
    PageVO getReceiveTask(Integer userid,int status,Pageable pageable);  //根据任务状态获取自己接受的任务
    PageVO getAllReceiveTask(Integer userid,Pageable pageable);  //获取自己所有接受的任务
    ResultVO saveComment(String token,String taskId,String content);  //保存主评论
    ResultVO saveSubreview(String token,String commentId,String content);  //保存子评论
    CommentPageVO getCommentForTask(String taskId, int del_flag, Pageable pageable);    //获取主评论
    CommentPageVO getSubreviewForTask(String commentId,int del_flag,Pageable pageable);  //获取子评论
    ResultVO deleteComment(String token,String commentId,int del_flag);   //删除主评论
    ResultVO deleteSubreview(String token,String subreviewId,int del_flag);  //删除子评论
    ResultVO  receviceTask(String token,String taskId);  //接受任务
    ResultVO cancel_taskRecvice(String token,String taskId); // 取消任务
    ResultVO loveTask(String token,String taskId); //任务点赞
    ResultVO successTask(String token,String taskId);  //完成任务
    ResultVO cancel_love(String token,String taskId);  //取消点赞
    ResultVO taskIdForTask(String token,String taskId);  //根据任务的id获取任务信息
    PageVO getRelated(int userid,Pageable pageable);    //通知类-->回复评论
    PageVO getLoveNotice(int userid,Pageable pageable);  //点赞通知
    PageVO aboutMeRelated(int userid,Pageable pageable);    //我回复的评论
    PageVO aboutMeLove(int userid,Pageable pageable);  //我的点赞

}
